package com.sumset.daos;

import java.util.List;

import javax.ejb.LocalBean;
import javax.ejb.Stateless;

import org.jboss.seam.annotations.TransactionPropagationType;
import org.jboss.seam.annotations.Transactional;

import com.sumset.entidades.Ciudad;

/**
 * Descripcion Clase: Ejb donde se hereda del daoGenerico
 * y se obtienen todos los metodos.
 * Responsabilidades: Implementar el bean de session donde 
 * se realizan todas las operaciones respectivas de Ciudad. 
 * Fecha Creacion: 05/02/2012
 * @author andres*/

@Stateless
@LocalBean
public class DaoCiudad extends DaoGenerico<Ciudad> {
       
	public static final Integer MAXIMO_RESULTADO = 30;
    /**
     * Constructor generico del bean DaoCuidad
     */
    public DaoCiudad() {
        super();
    }

    /**
	 * Proposito del Metodo: Obtener la clase CategoriaDenuncia.
	 * Responsabilidades: Obtener como tal la entidad CategoriaDenuncia.
	 * @return CategoriaDenuncia.class: retorna la clase categoriaDenuncia.
	 * @author andres.
	 * @exception ninguna.*/
	@Override
	public Class<Ciudad> getEntidadClass() {

		return Ciudad.class;
	}
	
	/**
	 * Proposito del Metodo: Realizar la consulta de las Ciudades que existan. 
	 * Responsabilidades: Obtener la lista de las ciudades Registradas en la BD.
	 * @return List<Ciudad>: retorna la lista de los datos
	 *         consultados, en este caso de Ciudades.
	 * @author andres.
	 * @exception ninguna.*/
	@Transactional(TransactionPropagationType.NEVER)
	public List<Ciudad> listarDatos() {

		return getEm().createQuery(
				"Select e From Ciudad e").setMaxResults(MAXIMO_RESULTADO).getResultList();

	}


}
